package com.dhecp.project.system.domain;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;

/**
 * 系统设置 实体类
 * @author lwl
 * @version 2019年10月31日
 */
public class SysSetting implements Serializable {

	private static final long serialVersionUID = 1L;
	private String guid;				//系统唯一值
	private String systemName;			//系统名称
	private String systemVersion;		//系统版本
	private String systemLogo;			//系统logo
	private String copyRightYear;		//版本年份
	private String authorizationCode;	//授权码
	private String conditionsType;		//查询条件类型
	private Integer decimalForPrice;	//单价小数位数
	private Integer decimalForSum;		//金额小数位数
	private Integer decimalForNumber;	//数量小数位数
	private Integer decimalForPercent;	//百分比小数位数
	private Integer decimalForDelFile;	//附件删除期限
	private Integer passwordPeriodMM;	//验证过期时间(分钟)
	private Integer mailDelDays;		//非保留邮件保留天数（超期转已删除）
	private Integer mailDelSupDays;		//已删除邮件保留天数（超期彻底删除）

	private Integer remindDaysForContract;	//合同续签提前提醒天数
	
	private Boolean crossCompanySales;	//允许跨公司出货
	private Boolean crossCompanyOrder;	//允许跨公司订货
	private Boolean crossUserModify;	//允许调拨他人库存（借货）
	private String orderByNid;			//单据排序规则 （desc：降序，asc：升序）
	private Boolean agentEnable;		//是否启用代理功能
	private Boolean fPriceEnable;		//是否启用实际进价
	private Boolean sharedForCG;		//针对销售员设置客户商务
	private Boolean discountMethod;		//以含税/未税面价进行单价与折扣互算
	private Boolean appEnable;			//手机APP中启用
	
	private String wxTicket;			//H5应用调用企业微信JS接口的临时凭证
	@JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date wxExpires;			//ticket凭证有效期
	
	private String createUser;			//创建人
	@JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;			//创建日期
	private String updateUser;			//修改人
	@JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;			//修改日期
	
	public String getGuid() {
		return guid;
	}
	public void setGuid(String guid) {
		this.guid = guid;
	}
	public String getSystemName() {
		return systemName;
	}
	public void setSystemName(String systemName) {
		this.systemName = systemName;
	}
	public String getSystemVersion() {
		return systemVersion;
	}
	public void setSystemVersion(String systemVersion) {
		this.systemVersion = systemVersion;
	}
	public String getCopyRightYear() {
		return copyRightYear;
	}
	public void setCopyRightYear(String copyRightYear) {
		this.copyRightYear = copyRightYear;
	}
	public String getAuthorizationCode() {
		return authorizationCode;
	}
	public void setAuthorizationCode(String authorizationCode) {
		this.authorizationCode = authorizationCode;
	}
	public String getConditionsType() {
		return conditionsType;
	}
	public void setConditionsType(String conditionsType) {
		this.conditionsType = conditionsType;
	}
	public Integer getDecimalForPrice() {
		return decimalForPrice;
	}
	public void setDecimalForPrice(Integer decimalForPrice) {
		this.decimalForPrice = decimalForPrice;
	}
	public Integer getDecimalForSum() {
		return decimalForSum;
	}
	public void setDecimalForSum(Integer decimalForSum) {
		this.decimalForSum = decimalForSum;
	}
	public Integer getDecimalForNumber() {
		return decimalForNumber;
	}
	public void setDecimalForNumber(Integer decimalForNumber) {
		this.decimalForNumber = decimalForNumber;
	}
	public Integer getDecimalForPercent() {
		return decimalForPercent;
	}
	public void setDecimalForPercent(Integer decimalForPercent) {
		this.decimalForPercent = decimalForPercent;
	}
	
	public Integer getDecimalForDelFile() {
		if (decimalForDelFile == null){
			return 180;
		}
		return decimalForDelFile;
	}
	public void setDecimalForDelFile(Integer decimalForDelFile) {
		this.decimalForDelFile = decimalForDelFile;
	}
	public Integer getPasswordPeriodMM() {
		if (passwordPeriodMM == null){
			return 5;
		}
		return passwordPeriodMM;
	}
	public void setPasswordPeriodMM(Integer passwordPeriodMM) {
		this.passwordPeriodMM = passwordPeriodMM;
	}
	public Integer getMailDelDays() {
		if (mailDelDays == null){
			return 3660;
		}
		return mailDelDays;
	}
	public void setMailDelDays(Integer mailDelDays) {
		this.mailDelDays = mailDelDays;
	}
	public Integer getMailDelSupDays() {
		if (mailDelSupDays == null){
			return 60;
		}
		return mailDelSupDays;
	}
	public void setMailDelSupDays(Integer mailDelSupDays) {
		this.mailDelSupDays = mailDelSupDays;
	}
	public Integer getRemindDaysForContract() {
		if (remindDaysForContract == null){
			return 0;
		}
		return remindDaysForContract;
	}
	public void setRemindDaysForContract(Integer remindDaysForContract) {
		this.remindDaysForContract = remindDaysForContract;
	}
	public Boolean getCrossCompanySales() {
		if (crossCompanySales == null){
			return false;
		}
		return crossCompanySales;
	}
	public void setCrossCompanySales(Boolean crossCompanySales) {
		this.crossCompanySales = crossCompanySales;
	}
	public Boolean getCrossCompanyOrder() {
		if (crossCompanyOrder == null){
			return false;
		}
		return crossCompanyOrder;
	}
	public void setCrossCompanyOrder(Boolean crossCompanyOrder) {
		this.crossCompanyOrder = crossCompanyOrder;
	}
	public String getOrderByNid() {
		if (orderByNid == null || !"asc".equals(orderByNid)){
			return "desc";
		}
		return orderByNid;
	}
	public void setOrderByNid(String orderByNid) {
		this.orderByNid = orderByNid;
	}
	public Boolean getAgentEnable() {
		if (agentEnable == null){
			return false;
		}
		return agentEnable;
	}
	public void setAgentEnable(Boolean agentEnable) {
		this.agentEnable = agentEnable;
	}
	public Boolean getfPriceEnable() {
		if (fPriceEnable == null){
			return false;
		}
		return fPriceEnable;
	}
	public void setfPriceEnable(Boolean fPriceEnable) {
		this.fPriceEnable = fPriceEnable;
	}
	public String getCreateUser() {
		return createUser;
	}
	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public String getUpdateUser() {
		return updateUser;
	}
	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	public String getSystemLogo() {
		return systemLogo;
	}
	public void setSystemLogo(String systemLogo) {
		this.systemLogo = systemLogo;
	}
	public Boolean getSharedForCG() {
		if (sharedForCG == null){
			return false;
		}
		return sharedForCG;
	}
	public void setSharedForCG(Boolean sharedForCG) {
		this.sharedForCG = sharedForCG;
	}
	public Boolean getDiscountMethod() {
		if (discountMethod == null){
			return false;
		}
		return discountMethod;
	}
	public void setDiscountMethod(Boolean discountMethod) {
		this.discountMethod = discountMethod;
	}
	public Boolean getCrossUserModify() {
		if (crossUserModify == null){
			return false;
		}
		return crossUserModify;
	}
	public void setCrossUserModify(Boolean crossUserModify) {
		this.crossUserModify = crossUserModify;
	}
	public Boolean getAppEnable() {
		if (appEnable == null){
			return false;
		}
		return appEnable;
	}
	public void setAppEnable(Boolean appEnable) {
		this.appEnable = appEnable;
	}
	public String getWxTicket() {
		return wxTicket;
	}
	public void setWxTicket(String wxTicket) {
		this.wxTicket = wxTicket;
	}
	public Date getWxExpires() {
		return wxExpires;
	}
	public void setWxExpires(Date wxExpires) {
		this.wxExpires = wxExpires;
	}
	
}
